Cached disk controllers must manage their caches properly to achieve optimal performance. The objective is to keep as much active data in the caches as possible to avoid the very large penalty incurred by having to access physical disk. There are a number of patents directed to disk controllers, each having certain advantages and disadvantages.
U.S. Pat. No. 4,101,969 to Lawson et al., is directed to a secondary storage facility with means for monitoring sector pulses. The problem solved by this patent is the detection of more than one respondent for a bus transaction that has a single respondent. When a disk is selected for reading data, the disk first moves a head to a selected track, then awaits the selected sector to rotate in position under the head. As the sector reaches the head, the information that passes under the read head is filtered and shaped into pulses that are reported over the bus to a host computer. A problem develops when two or more disk respond to a single command to read data. This should never occur, but could occur if a device were to fail, or if noise on the bus were to cause more than one disk to be selected. Lawson et al describes a mechanism that detects this condition by observing that two or more drives are attempting to report pulses over a bus in response to a transaction. There is no teaching relative to recording the activity of references to a disk or to a collection of disks.
U.S. Pat. No. 3,577,185 to Belady, is directed to an on-line system for measuring the efficiency of replacement algorithms in the control and measurement of a memory hierarchy. Belady measures only faults, that is, references made to a block of data that is not located in the fast memory of a hierarchy. Belady determines which faults have occurred that would have also occurred if an optimal control-algorithm were used instead of the one actually in use during the measurement period. An optimal control-algorithm requires perfect knowledge of the future, and thus cannot be implemented in principle. Belady's invention provides the information necessary to determine how close a realizable algorithm can approach the theoretical optimum. Belady records only the number of faults, and the rate at which they occur. The time at which the faults occur is not of interest, and thus is not recorded. Information is used to evaluate a replacement algorithm, and is supposedly for performance analysis only. There is no suggestions relative to measuring activity of accesses to a disk.
U.S. Pat. No. 4,542,458 to Kitajima et al., is directed to an attempt at solving the so-called File Assignment Problem. In other words, it attempts to place files onto devices (e.g., DASD) in an optimal fashion. It is assumed that the maximum allowable access rate and maximum allowable utilizations are known for each device. No methodology is given for determining these numbers. In the simplest version of the invention, files are reordered by access rate frequency, and the devices are reordered by processing speed (i.e., nominal response time estimates). Assume that the first n-1 files have been assigned by the algorithm to devices (including the initial case where n=1.) A greedy algorithm then picks, for the nth file, a `fastest` possible device amongst those devices for which the access rate and utilization constraints would not be violated. The constraint equations are then updated, and the process continues with the n+1st file. Enhancements to this algorithm have additional constraints such as device failure rates, or response time priorities by type of file access.
U.S. Pat. No. 4,429,363 to Duke et el. assists in the dynamic operation of a cache. It suggests the monitoring of cache misses, write operations and certain status information relating to the last track referenced (LTR). It then uses this information to help determine when to promote DASD records to the cache, and occasionally when to demote DASD records from the cache. As a simple illustrative example, when there are no writes to any track in a series of requests, the LTR contents are promoted to cache; with a write, the LTR contents are not promoted. The inhibiting of certain cache promotions is intended to decrease the cache miss rate for reads. A series of additional cache promotion/demotion decisions are made for similar purposes.
According to the present invention, a disk controller computes the number of distinct sectors referenced as a function of time. The computation is used by cache management algorithms for optimization of disk cache.